class_name BezierUtil

## 得到Bezier曲线上t处点的坐标
## 二阶Bezier
## t: 0-1，0表示起点，1表示终点
## control: 控制点（常见取值：起点终点垂直平分线上一点 或 过起点终点连线的中点垂直于X轴上的一点）
static func get_bezier_point(t:float,start:Vector2,control:Vector2,end:Vector2):
	return (1 - t) * (1 - t) * start + 2 * t * (1 - t) * control + t * t * end
## 得到一条指定点数量的Bezier曲线
static func get_bezier_path(start:Vector2,control:Vector2,end:Vector2,point_count:float = 10) -> Array:
	var points = []
	if point_count >= 2:
		for i in range(point_count):
			var t = 1/(point_count - 1) * i
			points.append(get_bezier_point(t,start,control,end))
	return points
